// 1. 导入 http 模块
const http = require('http')
const dayjs = require('dayjs')
const db = require('./db/index')

// 2. 创建 web 服务器实例
const server = http.createServer()

// 3. 启动服务器
server.listen(8848, () => {
    console.log('my server start work at 8848')
})

// 4. 为服务器实例绑定 request 事件，监听客户端的请求
server.on('request', (req, res) => {
    console.log(req.url)
    // 设置响应的内容为JSON
    res.setHeader('Content-Type', 'application/json; charset=utf-8')
    res.setHeader('Access-Control-Allow-Origin', '*')
    // 不能直接响应 对象/数组 需要转为字符串

    // 接口要确定 GET / POST
    // 我现在是后端 我们需要判断前端访问的是哪个接口 /api/news
    if (req.method === 'GET' && req.url === '/api/news') {
        const news = db.news()
        news.forEach(el => {
            el.publish_time = dayjs(el.publish_time).format('YYYY-MM-DD HH:mm:ss')
        })
        res.end(JSON.stringify(news))
    } else if (req.method === 'GET' && req.url === '/api/students') {
        const students = db.students()
        res.end(JSON.stringify(students))
    } else if (req.method === 'GET' && req.url === '/api/luckystar') {
        const luckystar = db.luckystar()
        res.end(JSON.stringify(luckystar))
    }
})